import os

def generate_files(input_file_path, output_dir, num_files=48):
    """
    读取指定文件的内容，并根据内容生成多个Java文件。

    参数:
    input_file_path (str): 输入文件的路径。
    output_dir (str): 输出目录的路径。
    num_files (int, optional): 要生成的文件数量，默认为48。

    返回:
    None
    """
    # 读取输入文件的内容
    with open(input_file_path, 'r', encoding='utf-8') as file:
        file_content = file.read()

    # 判断文件夹不存在，再创建文件夹
    if not os.path.exists(output_dir):
        # 创建输出目录
        os.makedirs(output_dir, exist_ok=True)

    # 生成48份文件
    for i in range(num_files):
        class_name = f"ActValHprg{i+1}"
        # 使用格式化字符串替换内容中的占位符
        file_content2 = file_content.format(class_name=class_name)

        output_file_path = os.path.join(output_dir, f'{class_name}.java')
        # 将格式化后的内容写入到新的Java文件中
        with open(output_file_path, 'w', encoding='utf-8') as file:
            file.write(file_content2)

    # 打印生成成功的信息
    print(f"{num_files} 份文件已成功生成并保存到 {output_dir} 目录中。")


def main():
    # 输入文件路径
    input_file_path = "d:/a/a.txt"
    
    # 输出目录
    output_dir = "d:/a"
    
    # 调用函数生成文件
    generate_files(input_file_path, output_dir,10)

if __name__ == "__main__":
    main()
